Skip to main content

Product custom multiselect

Use this block for checkbox lists where customers may choose more than one option. It writes the combined selections into a hidden input using a comma-and-space separator so Shopify receives a single property value.

Related: Need to add fees to specific options? See Custom Option Fees.

Configuration steps

  1. Add Product custom multiselect to the product form.
  2. Set the Line item property key and populate Options using comma, pipe, or slash separators between choices (newline-separated options are supported but separators are the most reliable format).
  3. Choose layout widths, enter optional heading/description copy, and decide whether to mark the group as required. If required, communicate how many selections are expected because Shopify can only validate that something was chosen.
  4. (Optional) Configure Charge a fee for specific options with Option name|fee-product-handle pairs. The price preview automatically appears next to the checkbox label.
  5. If you need conditionals, use the same logic controls as other blocks to show the multiselect when another property contains certain values.

Shared features

All custom option blocks share these capabilities:

  • Conditional display: Show or hide based on the value of another property using the Conditional logic settings. The block remains hidden and its inputs are disabled until the condition is met.
  • Product tag filter: Limit to products with a specific tag using the Only show when product has tag setting.
  • Width controls: Choose full or half width on tablet/desktop for easier layout mixing.
  • Fee support: When paired with the optional Custom Option Fees script, specific selections can add a hidden product to the cart. Read more in Custom Option Fees.

How to name properties

  • The Line item property key becomes the label in the cart and order details. Use plain text such as Patch Color or Engraving.
  • Shopify automatically namespaces properties as properties[Patch Color] behind the scenes; you only need to provide the key in the block settings.
  • Reuse the same property key across languages by translating the cart label in your locale files if needed.

Customer experience

  • Customers see a checklist and the selected values are saved to a hidden input that stays in sync as they click checkboxes.
  • The resulting line item property looks like Engraving add-ons: Gold Foil, Gift Box in the cart.

Troubleshooting

  • Confirm each property has a unique key before testing. Shopify overwrites duplicate property keys with the last value submitted.
  • When fees are involved, preview the cart to ensure the correct fee product is added. Refer to Custom Option Fees for debugging tips.
  • If a conditional block never appears, double-check the comparison value spelling—it compares lowercase, trimmed text behind the scenes.

See also: